// http.ts
import axios from 'axios'

const service = axios.create({
    // 联调
    baseURL: 'http://localhost:8000',
    timeout: 30000,
})

// 请求拦截器
service.interceptors.request.use((config) => {
    return config
}, (error) => {
    // 错误抛到业务代码
    error.data = {}
    error.data.msg = '服务器异常，请联系管理员！'
    return Promise.resolve(error)
})

// 响应拦截器
service.interceptors.response.use((response) => {
    console.log({ data: response.data, status: response.status, msg: response.msg || '' });
    return { data: response.data, status: response.status, msg: response.msg || '' }
}, (error) => {
    // 错误抛到业务代码
    error.data = {}
    error.data.msg = '请求超时或服务器异常，请检查网络或联系管理员！'
    return Promise.resolve(error)
})

export default service